import fileAccessComponent from "./src/fileAccess.vue";

let FileAccessConstructor; // 组件实例
let fileAccessDom; // 组件实例状态,同时最多只能存在一个组件，前生成的会被后生成的覆盖

const fileAccess = {
  // 图片获取(使用后销毁)
  created(data, success, error) {
    // 初始化组件
    if (fileAccessDom) {
      fileAccessDom = false;
    }
    fileAccessDom = new FileAccessConstructor({
      el: document.createElement("div"),
      data() {
        return data;
      },
      methods: {
        successFn(path) {
          success(path);
        },
        errorFn(errorObject) {
          error(errorObject);
        }
      }
    });
  }
};

export default function install(Vue) {
  FileAccessConstructor = Vue.extend(fileAccessComponent);
  // 将组件注册到 vue 的 原型链里去
  Vue.prototype.$fileAccess = fileAccess;
}
